The present invention relates to database management programs. More particularly, the present invention relates to apparatus and methods therefor that permit, in an efficient and highly intuitive manner, data stored in a first database format to be imported into a second database having a different data format.
Database management programs and data structures therefor are known. There are currently existing many different database management programs, many of which employ different formats in organizing their data. For ease of discussion, the discussion below is made with reference to a particular type of database management program known as personal information manager (PIM), although the techniques disclosed herein may be applied to any type of database program that organizes its data into records and record fields.
In the current art, when a user wishes to switch from one personal information manager program to another personal information manager program, he or she may wish to import data that has been created and in use in the old personal information manager program into the new personal information manager program. Import is generally preferred over manual data entry, since import is a computer-implemented process and is substantially more efficient, as well as less tedious, than manual data entry.
To facilitate discussion, FIG. 1A illustrates a screen shot of a prior art import screen, representing the mechanism by which the user of a prior art personal information manager program (in this case, ACT! by Symantec of Cupertino, Calif.) may employ to import data created in a previous personal information manager program into ACT! In prior art import window 102, there are shown a list of import data fields 104 and a list of target headers 106. List of import data fields 104 represents the list of data items in one of the import records of the import database, typically (but not necessarily) the first record. List of target headers 106 represents the list of target data headers present in a target record of the target database, e.g., ACT! in this case.
By mapping individual import data fields in list of import data fields 104 to individual target headers in list of target headers 106, the user can specify via prior art import window 102 the relationship between a given piece of import data in the import record and a target header in the target record. For example, the user may specify that the phone number 214-555-9665 in list of import data fields 104 should correspond to the "Fax Phone" target header in list of target headers 106, and telephone number 214-555-9876 in list of import data fields 104 should correspond to target header "Phone" in list of target headers 106.
To ease the task of importing data, some import data fields in list of import data fields 104 may be matched by default with some target headers in list of target headers 106. For these default matches, the user may either accept them or specify a different mapping between the import data field and the target header in the target record. By so specifying, the default match is overridden.
In prior art import window 102, the "MAP TO" mechanism 108 represents the mechanism by which the user of prior art import window 102 may specify a custom match between a given import data field and a target header in the target database of the ACT! program. To illustrate the operation of this "MAP TO" mechanism, import data field "Corporate Image Products" in prior art import window 102 is shown mapped by default to target header "Company" of list of target headers 106. If the user wishes to map this import data field to a different target header, e.g., target header "Contact" in list of target headers 106, he may first select this import data field for operation by, for example, clicking on this import data field to highlight it. The highlighting is shown in FIG. 1A. The user may then activate the "MAP TO" button 108 to bring up another window to permit the user to choose a different match for the selected import data item "Corporate Image Products".
FIG. 1B illustrates a map field window 150, representing the window through which the user may specify a different association between import data field "Corporate Image Products" and another target header of list of target headers 106 of FIG. 1A. Via map field window 150, the user may click on target header "Contact" to specify to the ACT! program that import data field "Corporate Image Products" should be mapped to header "Contact" for this target record. Further, the user also implies, through this custom match, that import data fields analogous to this import data item "Corporate Image Products" in subsequent import records should be mapped to target header "Contact."
Although the prior art import process permits, through a combination of default and custom matches, data created in one database management program to be imported into another database management program, there are many disadvantages. For example, it is not always intuitive to a novice user how to perform a custom match between an import data field and a target header. In other words, the relationship between prior art import window 102 and map field window 150 is not always intuitively clear.
Further, the prior art import process in ACT! is relatively inefficient since the user is forced to focus on one import data field at a time, and must bring up a custom map field window similar to map field window 150 whenever a change in mapping needs to be made. Additionally, map field window 150 is given without context and in many cases, it is not known from looking at map field window 150 whether a particular target header shown in map field window 150 has already been mapped with another import data field, and therefore unavailable for mapping.
Further, prior art import window 102 and map field window 150 do not provide the user with a familiar visual context. For example, prior art import window 102 and list of target headers 106 have a different layout than the window employed for manual data entry in ACT!. This is a disadvantage since the window employed for manual entry typically represents the window most frequently employed in interacting with the database program and is therefore most familiar to users. In forcing the user to employ a window having a different layout to import data, the prior art does not gain leverage from the user's familiarity with the window the user is already familiar with, e.g., the window employed for manual data entry.
In addition, the lack of visual context makes it difficult for the user to make mapping decisions with regards to certain target headers. For example, target header "Last Results" in list of target headers 106 lacks visual context when it is displayed in the format of prior art import window 102 since, for example, the user has no information regarding the relationship between this target header and other target headers in the target record. Accordingly, the user may experience difficulties in trying to decide which import data field in list of import data fields 104 should be mapped to this target header.
In view of the foregoing, there are desired improved techniques for importing data stored in an import database format into a target database management program having a different format. Among other usability improvements, the improved techniques preferably permit the user to perform data import in an intuitive and efficient manner while leveraging the user's familiarity with other windows of the target database management program.